/*
 * jiyan1
 */

package com.jiyan.staff.dao;

import com.rzhkj.core.base.BaseMybatisDAOImpl;
import org.springframework.stereotype.Repository;
import com.jiyan.staff.entity.Staff;

/**
 * 员工信息
 * @author jiyan
 */
@Repository
public class StaffDAO extends BaseMybatisDAOImpl<Staff,Long>{

    /**
     * 加载一个对象员工信息 通过code
     * @param code 唯一编码
     * @return Staff
     */
    public Staff loadByCode(java.lang.String code) {
        return getSqlSession().selectOne(this.sqlmapNamespace+".loadByCode",code);
    }

    /**
     * 更新对象员工信息 通过code
     * @param code 唯一编码
     */
    public void updateByCode(Staff staff,java.lang.String code) {
        if(code!=null){
           staff.setCode(code);
        }
        getSqlSession().update(this.sqlmapNamespace+".update",staff);
    }

    /**
     * 删除对象员工信息
     * @param id @param code 唯一编码@param jobnumber 工号
     */
    public void delete(java.lang.Long id,java.lang.String code,java.lang.String jobnumber) {
        Map<String,Object> map= new HashMap<String,Object>();
        if(id!=null){
           map.put("id",id);
        }
        if(code!=null){
           map.put("code",code);
        }
        if(jobnumber!=null){
           map.put("jobnumber",jobnumber);
        }
        getSqlSession().delete(this.sqlmapNamespace+".delete",map);
   }
    /**
     * 加载一个对象员工信息 通过jobnumber
     * @param jobnumber 工号
     * @return Staff
     */
    public Staff loadByJobnumber(java.lang.String jobnumber) {
        return getSqlSession().selectOne(this.sqlmapNamespace+".loadByJobnumber",jobnumber);
    }

    /**
     * 更新对象员工信息 通过jobnumber
     * @param jobnumber 工号
     */
    public void updateByJobnumber(Staff staff,java.lang.String jobnumber) {
        if(jobnumber!=null){
           staff.setJobnumber(jobnumber);
        }
        getSqlSession().update(this.sqlmapNamespace+".update",staff);
    }

    /**
     * 删除对象员工信息
     * @param id @param code 唯一编码@param jobnumber 工号
     */
    public void delete(java.lang.Long id,java.lang.String code,java.lang.String jobnumber) {
        Map<String,Object> map= new HashMap<String,Object>();
        if(id!=null){
           map.put("id",id);
        }
        if(code!=null){
           map.put("code",code);
        }
        if(jobnumber!=null){
           map.put("jobnumber",jobnumber);
        }
        getSqlSession().delete(this.sqlmapNamespace+".delete",map);
   }
}
